home *** CD-ROM | disk | FTP | other *** search
- /*
- * Copyright (C) 1992, 1993, 1994, Silicon Graphics, Inc.
- * All Rights Reserved.
- *
- * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
- * the contents of this file may not be disclosed to third parties, copied or
- * duplicated in any form, in whole or in part, without the prior written
- * permission of Silicon Graphics, Inc.
- *
- * RESTRICTED RIGHTS LEGEND:
- * Use, duplication or disclosure by the Government is subject to restrictions
- * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
- * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
- * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
- * rights reserved under the Copyright Laws of the United States.
- */
- #ifndef MESHDEF
- #define MESHDEF
-
- typedef struct Meshobj {
- int connectcount;
- int independentcount;
- int npolys;
- int vertcount;
- int vertno;
- struct Edge * edgearray;
- struct Edge * freeedges;
- struct Edge ** edgehashlist;
- struct Tri * curtri;
- struct Tri ** trihashlist;
- struct Trilist * adjtrilist[4];
- struct Trilist * donetrilist;
- struct Trilist * newtrilist;
- struct Trilist * trilist;
- struct Vert * tmpvert;
- struct Vert ** verthashlist;
- struct Vertlist * vertlist;
- void (*ambegin)( int, int );
- void (*amend)( void );
- int (*amhashvert)( long );
- int (*amvertsame)( long, long );
- void (*amvertdata)( long );
- void (*ambgntmesh)( void );
- void (*amendtmesh)( void );
- void (*amswaptmesh)( void );
- void (*amvert)( long );
- } Meshobj;
-
- extern Meshobj * newMeshobj (
- void (*)( int, int ), void (*)( void ),
- int (*)( long ), int (*)( long, long ),
- void (*)( long ), void (*)( void ),
- void (*)( void ), void (*)( void ),
- void (*)( long ) );
- extern void freeMeshobj( Meshobj * );
- extern void in_ambegin( Meshobj * );
- extern void in_amnewtri( Meshobj * );
- extern void in_amvert( Meshobj *, long );
- extern void in_amend( Meshobj * );
-
- #endif
-